package com.kebabeaters.nakebab.client.presenter;

import com.google.gwt.event.shared.EventBus;
import com.google.inject.Inject;
import com.gwtplatform.dispatch.shared.DispatchAsync;
import com.gwtplatform.mvp.client.Presenter;
import com.gwtplatform.mvp.client.View;
import com.gwtplatform.mvp.client.annotations.NameToken;
import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
import com.gwtplatform.mvp.client.proxy.ProxyPlace;
import com.gwtplatform.mvp.client.proxy.RevealContentEvent;
import com.kebabeaters.nakebab.client.place.NameTokens;

public class HelloWorldPresenter extends
		Presenter<HelloWorldPresenter.Display, HelloWorldPresenter.Proxy> {

	public interface Display extends View {

	}

	@ProxyCodeSplit
	@NameToken(NameTokens.helloWorld)
	public interface Proxy extends ProxyPlace<HelloWorldPresenter> {
	}

	@Inject
	public HelloWorldPresenter(EventBus eventBus, Display view, Proxy proxy, DispatchAsync dispatcher) {
		super(eventBus, view, proxy);
	}

	@Override
	protected void revealInParent() {
		RevealContentEvent.fire(this, ContentPresenter.TYPE_Content, this);
	}
}
